#ifndef UC_BRBVTRAV_H
#define UC_BRBVTRAV_H 1

#include "zadesk.h"
#include "zrxobject.h"
#include "zrxboiler.h"
#include "ucbrgbl.h"
#include "ucbrtrav.h"


// forward class declarations
class UcBrBrep;
class UcBrVertex;


class DllImpExp UcBrBrepVertexTraverser : public UcBrTraverser
{
public:
    UCRX_DECLARE_MEMBERS(UcBrBrepVertexTraverser);
    UcBrBrepVertexTraverser();
    UcBrBrepVertexTraverser(const UcBrBrepVertexTraverser& src);
    ~UcBrBrepVertexTraverser();

    // Assignment operator
    UcBrBrepVertexTraverser& operator =	(const UcBrBrepVertexTraverser& src);

    // Queries & Initialisers
    UcBr::ErrorStatus   setBrepAndVertex(const UcBrVertex& vertex);
    UcBr::ErrorStatus   setBrep         (const UcBrBrep& brep);
    UcBr::ErrorStatus   getBrep         (UcBrBrep& brep) const;
    UcBr::ErrorStatus   setVertex       (const UcBrVertex& vertex);
    UcBr::ErrorStatus   getVertex       (UcBrVertex& vertex) const;
};


#endif

